Body structure (JSON)
Required fields are in bold.
| Field | Example | Type and format | Comments |
| { | |||
| "partnerFrom" | invoice creator | ||
| { | |||
| "tin" | "001", | string | fiscal ID |
| "name" | "Lorem", | string | name |
| "vatNumber" | "26796", | string | VAT number |
| "city" | "Odesa", | string | city |
| "street" | "Test 2 street", | string | street |
| "postalCode" | "10800" | string | postal code |
| "countryCode" | "UA” | string | country code |
| }, | |||
| "partnerTo" | invoice receiver | ||
| { | |||
| "tin" | "002", | string | fiscal ID |
| "name" | "Test", | string | name |
| "vatNumber" | "2004673", | string | VAT number |
| "city" | "Odesa", | string | city |
| "street" | "Test street", | string | street |
| "postalCode" | "10000" | string | postal code |
| "countryCode" | "UA” | string | country code |
| “isResident” | true | bool | residency |
| }, | |||
| "msgID" | 30, | int | unique request ID |
| "invoiceNumber" | "30", | string | invoice number |
| "oper" | "invoice_cor", | string | an operation should be either ‘invoice’ or ‘invoice_cor’ |
| "documentTypeCode" | 381, | int | a document type code, should be 380 for “invoice” and 381 or 384 for “invoice_cor” |
| "parentFiscalNum" | “FA00145”, | string | is mandatory for ‘invoice_cor’ |
| "currency" | “UAH”, | string | currency (by ISO-4217 standard) |
| "payments" | list of payments (optional) | ||
| [ | |||
| { | |||
| "type" | "CASH", | string | payment type |
| "amount" | 393.4, | float | amount |
| "dat" | "2025-01-02T10:25:21.076Z", | dateTime of ISO-8601 format | payment date |
| } | |||
| ], | |||
| "employee" | "Bryan Laserna", | string | employee’s name and surname |
| "buyerReference" | "test cost center", | string | buyer reference |
| "specificationId" | "test specification", | string | specification ID |
| "dateTime" | "2025-01-02T092521.076Z", | dateTime of ISO-8601 format | the fiscalisation date and time |
| “invoiceDateTime” | "2025-01-02T092521.076Z", | dateTime of ISO-8601 format | invoice creation date |
| "taxTotals" | sum of all items’ taxes | ||
| [ | |||
| { | |||
| "taxCode" | "A", | string | tax code |
| "taxRate" | 15, | float | tax rate |
| "taxAmount" | 26.09 | float | tax amount |
| "baseAmount" | 700 | float | base amount |
| } | |||
| ], | |||
| "items" | list of items | ||
| [ | |||
| { | |||
| "lineId" | "1", | string | line ID |
| "poLine" | "5", | string | purchase order line ID |
| "name" | "Pepsi 0.3l", | string | name |
| "unit" | "PCE", | string | unit (by UN/CEFACT standard) |
| "qty" | 1, | float | quantity |
| "price" | 200, | float | price |
| "amount" | 200, | float | resulting amount |
| "discount" | 0, | float | discount |
| "discountPrc" | 0, | float | discount (in %) |
| "taxes" | list of taxes | ||
| [ | |||
| { | |||
| "taxCode" | "A", | string | tax code |
| "taxRate" | 15, | float | tax rate |
| "taxBase" | 200, | float | amount from which the tax is calculated |
| "taxAmount" | 26.09 | float | tax amount |
| } | |||
| ] | |||
| } | |||
| ], | |||
| "totalAmount" | 180, | float | total amount |
| "vatTotalAC" | 160.6, | float | VAT amount in accounting currency |
| "amountDue" | 23.8, | float | amount due for payment |
| "paymentTerms” | "test terms", | string | payment terms, either paymentTerms or paymentDueDate should be present if amountDue > 0 |
| "paymentDueDate" | "2025-21-25", | date in format YYYY-MM-DD | payment due date, either paymentTerms or paymentDueDate should be present if amountDue > 0 |
| "totalNetAmount" | 170, | float | total net amount |
| "totalVatAmount" | 23.8 | float | total VAT amount |
| } |
Example:
{
"partnerFrom": {
"tin": "001",
"name": "Lorem",
"vatNumber": "26796",
"city": "Odesa",
"street": "Test 2 street",
"postalCode": "10800",
"countryCode": "UA"
},
"partnerTo": {
"tin": "002",
"name": "Test",
"vatNumber": "2004673",
"city": "Odesa",
"street": "Test street",
"postalCode": "10000",
"countryCode": "UA",
"isResident": true
},
"msgID": 30,
"invoiceNumber": "30",
"oper": "invoice_cor",
"documentTypeCode": 381,
"parentFiscalNum": "FA00145",
"currency": "UAH",
"payments": [
{
"type": "CASH",
"amount": 393.4,
"dat": "2025-01-02T10:25:21.076Z"
}
],
"employee": "Bryan Laserna",
"buyerReference": "test cost center",
"specificationId": "test specification",
"dateTime": "2025-01-02T092521.076Z",
"invoiceDateTime": "2025-01-02T092521.076Z",
"taxTotals": [
{
"taxCode": "A",
"taxRate": 15,
"taxAmount": 26.09,
"baseAmount": 700
}
],
"items": [
{
"lineId": "1",
"poLine": "5",
"name": "Pepsi 0.3l",
"unit": "PCE",
"qty": 1,
"price": 200,
"amount": 200,
"discount": 0,
"discountPrc": 0,
"taxes": [
{
"taxCode": "A",
"taxRate": 15,
"taxBase": 200,
"taxAmount": 26.09
}
]
}
],
"totalAmount": 180,
"vatTotalAC": 160.6,
"amountDue": 23.8,
"paymentTerms": "test terms",
"paymentDueDate": "2025-21-25",
"totalNetAmount": 170,
"totalVatAmount": 23.8
}